package com.dtease.agent.biz.ai.vo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 聊天会话历史记录分页视图
 * @author chentailai
 * @project dtease-agent-server
 * @title 聊天会话历史记录分页视图
 * @package com.dtease.agent.sse.server.vo
 * @since 2025/5/14 09:20
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class BasChatHistoryPageVO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键，唯一标识会话记录
     */
    private String id;

    /**
     * 租户ID
     */
    private String tenantId;

    /**
     * 工作空间ID
     */
    private String workspaceId;

    /**
     * 用户ID
     */
    private String userId;

    /**
     * 会话ID，格式为：{tenant_id}_{workspace_id}_{user_id}
     */
    private String sessionId;

    /**
     * 用户意图，取值如：TABLE_SEARCH（表查询）、SQL_GENERATE（sql代码生成）
     */
    private String purposeCode;

    /**
     * 大模型类型，取值如：DeepSeek-V3、DeepSeek-R1(671B)）
     */
    private String aiType;

    /**
     * 聊天上下文（jsonb类型）
     */
    private String context;

    /**
     * 消息类型，取值：human（人类）、ai（人工智能）
     */
    private String messageType;

    /**
     * 消息内容
     */
    private String content;

    /**
     * 创建时间，默认当前时间
     */
    private LocalDateTime ctime;

    /**
     * 修改时间，默认当前时间
     */
    private LocalDateTime mtime;

    /**
     * 删除标识，0表示正常，1表示已删除
     */
    private Integer invalid;

    /**
     * 标题
     */
    private String title;


}
